package Json2RDF.Json2Java.OntologyClasses;

import com.fasterxml.jackson.annotation.JsonProperty;

import java.util.HashMap;

/**
 * {@code ConicalSurface}类表示圆锥面，继承自{@code Face}类.
 * 提供圆锥面的上下底面半径信息，轴线端点信息.
 */
public class ConicalSurface extends Face {
  @JsonProperty("TopRadius")
  private double topRadius;
  @JsonProperty("BottomRadius")
  private double bottomRadius;
  @JsonProperty("AxisEnd1")
  private double[] axisEnd1;
  @JsonProperty("AxisEnd2")
  private double[] axisEnd2;
  @JsonProperty("Height")
  private double height;

  /**
   * 初始化一个{@code ConicalSurface}类的实例.
   */
  public ConicalSurface() {
    this.id = "";
    this.partId = "";
    this.topRadius = 0.0;
    this.bottomRadius = 0.0;
    this.axisEnd1 = new double[2];
    this.axisEnd2 = new double[2];
    this.height = 0.0;
    this.relations = new HashMap<>();
  }

  public double getTopRadius() {
    return topRadius;
  }

  public void setTopRadius(double hasTopRadius) {
    this.topRadius = hasTopRadius;
  }

  public double getBottomRadius() {
    return bottomRadius;
  }

  public void setBottomRadius(double hasBottomRadius) {
    this.bottomRadius = hasBottomRadius;
  }

  public double[] getAxisEnd1() {
    return axisEnd1;
  }

  public void setAxisEnd1(double[] hasAxisEnd1) {
    this.axisEnd1 = hasAxisEnd1;
  }

  public double[] getAxisEnd2() {
    return axisEnd2;
  }

  public void setAxisEnd2(double[] hasAxisEnd2) {
    this.axisEnd2 = hasAxisEnd2;
  }
  public double getHeight() {
    return height;
  }

  public void setHeight(double height) {
    this.height = height;
  }

}
